let fs = require('fs');
let ejsExcel = require('ejsexcel');

const inputFileName = 'template-2.xlsx';
const outputFileName = 'template-2.output.xlsx';


//获得Excel模板的buffer对象
let inputBuffer = fs.readFileSync(`./${inputFileName}`);

//数据源
let data = {
    projectName: '兴亚.沙滨国际', propertyStatus: '已经开始服务业主', completionDate: '2018年5月10日',
    buildingNumber: '15栋', checkStage: '第二阶段', checkDate: '2018年-1月-1日 - 2018年5月10日',
    developers: '金科房地产有限公司', supervisorUnit: '华宇监理公司',
    constructionUnit: '中国建筑第三分公司', propertyManagement: '金科物业管理服务',
    outputRatio: '98%', newProblems: '一共验收 100 户，复查时新增  20  条，平均每户 2 条。',
    remark: '备注：请各位领导查看',
    data: [
        {checkDiscoverCount: 100, reviewRectifyCount: 89, newProblems: 19},
        {checkDiscoverCount: 101, reviewRectifyCount: 90, newProblems: 20},
        {checkDiscoverCount: 102, reviewRectifyCount: 91, newProblems: 21}
    ],
    data2: [
        [1, 21, 3, 4, 5, 6, 7, 8, 9],
        [11, 22, 3, 4, 5, 6, 7, 8, 9],
        [12, 23, 3, 4, 5, 6, 7, 8, 9],
        [13, 24, 3, 4, 5, 6, 7, 8, 9]
    ],
    data5: [
        [
            {a: '重庆1', b: '沙坪坝1', c: '新亚1'},
            {a: '渝北1', b: '中亚2', c: '8楼1'}
        ],
        [
            {a: '重庆2', b: '沙坪坝2', c: '新亚2'},
            {a: '渝北2', b: '中亚2', c: '8楼2'}
        ],
        [
            {a: '重庆3', b: '沙坪坝3', c: '新亚3'},
            {a: '渝北3', b: '中亚3', c: '8楼3'}
        ]
    ]
};


//用数据源(对象)data渲染Excel模板
ejsExcel.renderExcel(inputBuffer, data).then(function (outputBuffer) {
    fs.writeFileSync(`./${outputFileName}`, outputBuffer);
    console.log(`生成成功：${outputFileName}`);
}).catch(function (error) {
    console.error(`错误：${error}`);
});
